# DocType Mapper, Sales Order-Sales Invoice
[

	# These values are common in all dictionaries
	{
		'creation': '2012-04-03 12:49:42',
		'docstatus': 0,
		'modified': '2012-04-03 12:49:42',
		'modified_by': u'Administrator',
		'owner': u'Administrator'
	},

	# These values are common for all Table Mapper Detail
	{
		'doctype': u'Table Mapper Detail',
		'name': '__common__',
		'parent': u'Sales Order-Sales Invoice',
		'parentfield': u'table_mapper_details',
		'parenttype': u'DocType Mapper'
	},

	# These values are common for all Field Mapper Detail
	{
		'doctype': u'Field Mapper Detail',
		'name': '__common__',
		'parent': u'Sales Order-Sales Invoice',
		'parentfield': u'field_mapper_details',
		'parenttype': u'DocType Mapper'
	},

	# These values are common for all DocType Mapper
	{
		'doctype': u'DocType Mapper',
		'from_doctype': u'Sales Order',
		'module': u'Accounts',
		'name': '__common__',
		'ref_doc_submitted': 1,
		'to_doctype': u'Sales Invoice'
	},

	# DocType Mapper, Sales Order-Sales Invoice
	{
		'doctype': u'DocType Mapper',
		'name': u'Sales Order-Sales Invoice'
	},

	# Field Mapper Detail
	{
		'checking_operator': u'=',
		'doctype': u'Field Mapper Detail',
		'from_field': u'customer',
		'map': u'Yes',
		'match_id': 0,
		'to_field': u'customer'
	},

	# Field Mapper Detail
	{
		'doctype': u'Field Mapper Detail',
		'from_field': u'eval: obj.basic_rate and (flt(obj.amount) - flt(obj.billed_amt))/flt(obj.basic_rate) or obj.qty',
		'map': u'Yes',
		'match_id': 1,
		'to_field': u'qty'
	},

	# Field Mapper Detail
	{
		'doctype': u'Field Mapper Detail',
		'from_field': u'parent',
		'map': u'Yes',
		'match_id': 1,
		'to_field': u'sales_order'
	},

	# Field Mapper Detail
	{
		'doctype': u'Field Mapper Detail',
		'from_field': u'name',
		'map': u'Yes',
		'match_id': 1,
		'to_field': u'so_detail'
	},

	# Field Mapper Detail
	{
		'doctype': u'Field Mapper Detail',
		'from_field': u'eval:flt(obj.amount) - flt(obj.billed_amt)',
		'map': u'Yes',
		'match_id': 1,
		'to_field': u'amount'
	},

	# Field Mapper Detail
	{
		'doctype': u'Field Mapper Detail',
		'from_field': u'eval: (flt(obj.amount) - flt(obj.billed_amt))* flt(obj.export_rate)/flt(obj.basic_rate)',
		'map': u'Yes',
		'match_id': 1,
		'to_field': u'export_amount'
	},

	# Field Mapper Detail
	{
		'checking_operator': u'=',
		'doctype': u'Field Mapper Detail',
		'from_field': u'project_name',
		'map': u'Yes',
		'match_id': 0,
		'to_field': u'project_name'
	},

	# Field Mapper Detail
	{
		'doctype': u'Field Mapper Detail',
		'from_field': u'reserved_warehouse',
		'map': u'Yes',
		'match_id': 1,
		'to_field': u'warehouse'
	},

	# Field Mapper Detail
	{
		'doctype': u'Field Mapper Detail',
		'from_field': u'naming_series',
		'map': u'No',
		'match_id': 0,
		'to_field': u'naming_series'
	},

	# Field Mapper Detail
	{
		'doctype': u'Field Mapper Detail',
		'from_field': u'incentives',
		'map': u'No',
		'match_id': 3,
		'to_field': u'incentives'
	},

	# Field Mapper Detail
	{
		'checking_operator': u'=',
		'doctype': u'Field Mapper Detail',
		'from_field': u'export_rate',
		'map': u'Yes',
		'match_id': 1,
		'to_field': u'export_rate'
	},

	# Table Mapper Detail
	{
		'doctype': u'Table Mapper Detail',
		'from_table': u'Sales Order',
		'match_id': 0,
		'to_table': u'Sales Invoice',
		'validation_logic': u'docstatus=1'
	},

	# Table Mapper Detail
	{
		'doctype': u'Table Mapper Detail',
		'from_field': u'sales_order_detail',
		'from_table': u'Sales Order Item',
		'match_id': 1,
		'to_field': u'entries',
		'to_table': u'Sales Invoice Item',
		'validation_logic': u'(ifnull(amount, 0) = 0 or amount > ifnull(billed_amt, 0)) and docstatus = 1'
	},

	# Table Mapper Detail
	{
		'doctype': u'Table Mapper Detail',
		'from_field': u'other_charges',
		'from_table': u'Sales Taxes and Charges',
		'match_id': 2,
		'to_field': u'other_charges',
		'to_table': u'Sales Taxes and Charges',
		'validation_logic': u'name is not null'
	},

	# Table Mapper Detail
	{
		'doctype': u'Table Mapper Detail',
		'from_field': u'sales_team',
		'from_table': u'Sales Team',
		'match_id': 3,
		'to_field': u'sales_team',
		'to_table': u'Sales Team',
		'validation_logic': u'name is not null'
	}
]